查看原文
其他

Memcached反射放大DDoS攻击威胁分析

2018-03-02 应急响应中心 安恒信息

2018年2月27日,多国CERT和多家网络和云运营商报告称,恶意攻击者正在使用不安全配置的Memcached服务器来借力放大DDoS攻击。


根据报告,Memcached的带宽放大因子(Bandwidth Amplification Factor)能达到10000-51000,远超过之前广泛使用的NTP协议的556.9,刷新了UDP协议反射放大DDoS攻击的新记录,测试显示15byte的请求能触发750KB的响应,即51200的放大倍数,Memcached对互联网开放的无需验证的UDP 11211端口为成为了主要利用的DDoS反射器, Memcached默认同时开放UDP和TCP 11211端口,很多服务商并未限制外部访问该UDP端口。


网络上Memcached端口开放情况


全球分布


通过国外Shodan平台查询,全球Memcache服务主要分布情况如下,包含TCP和UDP端口。可以看到美国和中国最多。

国内分布

通过安恒研究院sumap平台针对国内memcached服务udp端口受影响情况统计,国内“udp端口 11211 memcached”的分布情况如下:

可以看到实际数量并不多。


端口开放自查


可通过Nmap网络安全扫描工具扫描端口开放情况,验证运行Memcached服务的IP资产是否开放UDP 11211端口,示例(Windows/Linux):

nmap 127.0.0.1 -p 11211 -sU -sS --script memcached-info


可通过Netcat网络实用工具连接端口测试,验证UDP 11211端口响应服务运行状态,示例(Linux下):

$ echo -en "\x00\x00\x00\x00\x00\x01\x00\x00stats\r\n" | nc -q1 -u 127.0.0.1 11211

STAT pid 21357

STAT uptime 41557034

STAT time 1519734962

...

如果看到非空有内容输出的响应(如上所示),表示Memcached服务器容易受到攻击,特别是暴露在互联网上的主机。

Memcached安全配置建议


>>运行Memcached服务安全配置<<


建议端口不要监听在0.0.0.0上,而是本地(localhost或127.0.0.1)或指定IP,并禁止UDP协议(参数-U设为0),示例:

memcached -p 11211 -l 127.0.0.1 -U 0

当然也可以更改监听端口,具体配置参考:

https://github.com/memcached/memcached/wiki/ConfiguringServer#udp

也可以启用SASL,1.4.3以上版本通过--enable-sasl编译支持SASL,实现在连接上发出命令之前,要求先身份验证。

SASL配置参考(建议启用):

https://github.com/memcached/memcached/wiki/SASLHowto


>>运行Memcached的操作系统安全策略配置<<


建议利用系统安全策略禁止外部访问本机UDP 11211端口,Linux下可使用netfilter/iptables,Windows下可使用IP安全策略禁止,或是通过外围安全设备阻止对该端口访问。


同时建议网络运营商实施源地址验证(BCP38/BCP84)标准,以防止其网络和最终用户的网络受到反射/放大DDoS攻击的影响。


相关信息来源:

https://www.us-cert.gov/ncas/alerts/TA14-017A

https://blog.cloudflare.com/memcrashed-major-amplification-attacks-from-port-11211/


- END -



上周热门文章TOP3


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存